home *** CD-ROM | disk | FTP | other *** search
/ Winzipper / Winzipper_ISO.iso / nt4.0 server / DRVLIB.NIC / SMC9232 / OEMSETUP.INF < prev    next >
INI File  |  1996-07-31  |  24KB  |  624 lines

  1. ;
  2. ; SMC setup for 9232 driver
  3. ;
  4.  
  5. [Identification]
  6.     OptionType = NetAdapter
  7. [PlatformsSupported]
  8.     EISA
  9.         "Jazz-Internal Bus"
  10. [Options]
  11.     SMC9232
  12. [FileConstants]
  13. UtilityInf      = "UTILITY.INF"
  14. subroutineinf   = "SUBROUTN.INF"
  15. SoftwareType    = "driver"
  16. Exit_Code       = 0
  17. NetEventDLL     = "%SystemRoot%\System32\netevent.dll"
  18. IoLogMsgDLL     = "%SystemRoot%\System32\IoLogMsg.dll"
  19. SMC9232_1BYTE    = 10527565
  20.  
  21. Manufacturer    = "SMC"
  22. ProductMajorVersion     = "1"
  23. ProductMinorVersion     = "0"
  24. ProductVersion  = $(ProductMajorVersion)"."$(ProductMinorVersion)
  25. ProductSoftwareName     = "SMC9232"
  26. ProductSoftwareImagePath = "\SystemRoot\System32\drivers\smc9232n.sys"
  27. NetRuleSoftwareType     = "smc9232Sys ndisDriver smc9232Driver"
  28. NetRuleSoftwareUse      = $(SoftwareType)
  29. NetRuleSoftwareBindForm = """smc9232Sys"" yes no container"
  30. NetRuleSoftwareClass    = {"smc9232Driver basic"}
  31. NetRuleSoftwareBindable = {"smc9232Driver smc9232Adapter non exclusive 100"}
  32. ProductHardwareName     = "SMC9232"
  33. NetRuleHardwareType     = "smc9232 smc9232Adapter"
  34. NetRuleHardwareBindForm = " yes yes container"
  35. NetRuleHardwareClass    = {"smc9232Adapter basic"}
  36. ProductKeyName  = $(!NTN_SoftwareBase)"\"$(Manufacturer)"\"$(ProductSoftwareName)"\CurrentVersion"
  37. ParamKeyName    = $(!NTN_ServiceBase)"\"$(ProductHardwareName)"\Parameters"
  38. [GeneralConstants]
  39. from      = ""
  40. to        = ""
  41. ExitCodeOk     = 0
  42. ExitCodeCancel = 1
  43. ExitCodeFatal  = 2
  44. KeyNull         = ""
  45. MAXIMUM_ALLOWED   = 33554432
  46. RegistryErrorIndex = NO_ERROR
  47. KeyProduct      = ""
  48. KeyParameters   = ""
  49. TRUE            = 1
  50. FALSE           = 0
  51. NoTitle            = 0
  52. ExitState   = "Active"
  53. OldVersionExisted = $(FALSE)
  54. DriverPath      = $(!STF_NTPATH)\drivers
  55. [date]
  56.     Now = {} ? $(!LIBHANDLE) GetSystemDate
  57. [Identify]
  58.     read-syms Identification
  59.     set Status     = STATUS_SUCCESSFUL
  60.     set Identifier = $(OptionType)
  61.     set Media      = #("Source Media Descriptions", 1, 1)
  62.     Return $(Status) $(Identifier) $(Media)
  63. [ReturnOptions]
  64.     set Status        = STATUS_FAILED
  65.     set OptionList     = {}
  66.     set OptionTextList = {}
  67.     set LanguageList = ^(LanguagesSupported, 1)
  68.     Ifcontains(i) $($0) in $(LanguageList)
  69.         ifstr(i) $($1) == ""
  70.            goto returnoptions
  71.         endif
  72.         set PlatformList = ^(PlatformsSupported, 1)
  73.         Ifcontains(i) $($1) in $(PlatformList)
  74.            goto returnoptions
  75.         else
  76.            set Status = STATUS_NOTSUPPORTED
  77.            goto finish_ReturnOptions
  78.         endif
  79.     else
  80.         set Status = STATUS_NOLANGUAGE
  81.         goto finish_ReturnOptions
  82.     endif
  83. returnoptions = +
  84.     set OptionList     = ^(Options, 1)
  85.     set OptionTextList = ^(OptionsText$($0), 1)
  86.     set Status         = STATUS_SUCCESSFUL
  87. finish_ReturnOptions = +
  88.     Return $(Status) $(OptionList) $(OptionTextList)
  89. [InstallOption]
  90.     set Option   = $($1)
  91.     set SrcDir   = $($2)
  92.     set AddCopy  = $($3)
  93.     set DoCopy   = $($4)
  94.     set DoConfig = $($5)
  95.     set LanguageList = ^(LanguagesSupported, 1)
  96.     Ifcontains(i) $($0) NOT-IN $(LanguageList)
  97.         Return STATUS_NOLANGUAGE
  98.     endif
  99.     Debug-Output "OEMNADNE.INF: STF_CWDIR is: "$(!STF_CWDIR)
  100.     Debug-Output "OEMNADNE.INF: STF_LANGUAGE is: "$(!STF_LANGUAGE)
  101.     set-subst LF = "\n"
  102.     read-syms GeneralConstants
  103.     read-syms FileConstants
  104.     read-syms DialogConstants$(!STF_LANGUAGE)
  105.     ifstr(i) $(!NTN_Origination) == "NCPA"
  106.         set Continue = $(OK)
  107.     endif
  108.     read-syms FileConstants$(!STF_LANGUAGE)
  109.     detect date
  110.     set-title  $(FunctionTitle)
  111.     set to   = Begin
  112.     set from = Begin
  113.     set CommonStatus = STATUS_SUCCESSFUL
  114.     EndWait
  115. Begin = +
  116.     Ifstr(i) $(!NTN_InstallMode) == deinstall
  117.         set StartLabel = removeadapter
  118.     else-Ifstr(i) $(!NTN_InstallMode) == Update
  119.         set StartLabel = UpgradeSoftware
  120.     else-Ifstr(i) $(!NTN_InstallMode) == bind
  121.         set StartLabel = bindingadapter
  122.     else-Ifstr(i) $(!NTN_InstallMode) == configure
  123.         set CommonStatus = STATUS_REBOOT
  124.         Ifstr(i) $(ProductKeyName) == $(!NTN_RegBase)
  125.             Debug-Output "Cannot configure the SMC 9232 driver software."
  126.             Shell $(UtilityInf),RegistryErrorString,CANNOT_CONFIGURE_SOFTWARE
  127.         else
  128.             Debug-Output "Cannot configure the SMC 9232 adapter card."
  129.             Shell $(UtilityInf),RegistryErrorString,CANNOT_CONFIGURE_HARDWARE
  130.         endif
  131.         ifint $($ShellCode) != $(!SHELL_CODE_OK)
  132.             Debug-Output "ShellCode error: cannot get an error string."
  133.             goto ShellCodeError
  134.         endif
  135.         set Error = $($R0)
  136.         set from = end
  137.         set to = end
  138.         goto nonfatalinfo
  139.     else
  140.         set StartLabel = installadapter
  141.         set OEM_ABANDON_OPTIONS = {}
  142.         set OEM_ABANDON_SOFTWARE = FALSE
  143.         set OEM_ABANDON_ON = TRUE
  144.     endif
  145.     set from = $(fatal)
  146.     set to = $(fatal)
  147.     goto $(StartLabel)
  148. installadapter = +
  149.     OpenRegKey $(!REG_H_LOCAL) "" $(ProductKeyName) $(MAXIMUM_ALLOWED) KeyProduct
  150.     Ifstr $(KeyProduct) != $(KeyNull)
  151.         CloseRegKey $(KeyProduct)
  152.         ifstr(i) !(NTN_RegBase) == $(ProductKeyName)
  153.            Shell $(UtilityInf), VerExistedDlg, $(ProductSoftwareTitle),+
  154.                $(ProductVersion)
  155.            ifint $($ShellCode) != $(!SHELL_CODE_OK)
  156.                Debug-Output "ShellCode error: cannot get an error string."
  157.                goto ShellCodeError
  158.            endif
  159.            goto end
  160.         else
  161.            Shell $(UtilityInf), CardExistedDlg
  162.            ifint $($ShellCode) != $(!SHELL_CODE_OK)
  163.                Debug-Output "ShellCode error: cannot get an error string."
  164.                goto ShellCodeError
  165.            endif
  166.            ifstr(i) $($R1) != "OK"
  167.                set CommonStatus = STATUS_USERCANCEL
  168.                goto end
  169.            endif
  170.            set OldVersionExisted = $(TRUE)
  171.         endif
  172.     endif
  173.     CloseRegKey $(KeyProduct)
  174.     goto nextstep
  175. configureadapter = +
  176.     set Error = "Configure: Sorry, not yet implemented."
  177.     goto fatal
  178. nextstep = +
  179.     StartWait
  180.     Shell $(UtilityInf), EISAFindBus, $(SMC9232_1BYTE)
  181.     ifint $($ShellCode) != $(!SHELL_CODE_OK)
  182.         goto ShellCodeError
  183.     endif
  184.     ifstr $($R0) != "NO_ERROR"
  185.         set Error = $($R0)
  186.         goto fatal
  187.     endif
  188.     ifstr(i) $($R1) == {}
  189.         set Error = $(CANNOT_FIND_ANY_CARD)
  190.         set CommonStatus = STATUS_USERCANCEL
  191.         set from = "end"
  192.         goto nonfatal
  193.     endif
  194.     set AdapterList = $($R1)
  195.     ifint $(OldVersionExisted) == $(FALSE)
  196.         ifstr(i) $(!NTN_InstallMode) == "install"
  197.            Ifstr(i) $(DoCopy) == "YES"
  198.               Shell $(UtilityInf), DoAskSource, $(!STF_CWDDIR), $(SrcDir) YES
  199.               Ifint $($ShellCode) != $(!SHELL_CODE_OK)
  200.                   Goto ShellCodeError
  201.               Else-Ifstr(i) $($R0) == STATUS_FAILED
  202.                   Shell $(UtilityInf) RegistryErrorString "ASK_SOURCE_FAIL"
  203.                   ifint $($ShellCode) != $(!SHELL_CODE_OK)
  204.                       goto ShellCodeError
  205.                   endif
  206.                   set Error = $($R0)
  207.                   Goto fatal
  208.               Else-Ifstr(i) $($R0) == STATUS_USERCANCEL
  209.                   Goto successful
  210.               Endif
  211.               Set SrcDir = $($R1)
  212.            Endif
  213.            install "Install-Option"
  214.            ifstr(i) $(STF_INSTALL_OUTCOME) != STF_SUCCESS
  215.               Shell $(UtilityInf) RegistryErrorString "UNABLE_COPY_FILE"
  216.               ifint $($ShellCode) != $(!SHELL_CODE_OK)
  217.                   goto ShellCodeError
  218.               endif
  219.               set Error = $($R0)
  220.               goto fatal
  221.            endif
  222.         endif
  223.         Shell $(UtilityInf), AddSoftwareComponent, $(Manufacturer), +
  224.             $(ProductSoftwareName), +
  225.             $(ProductSoftwareName), +
  226.             $(ProductSoftwareTitle), $(STF_CONTEXTINFNAME), +
  227.             $(ProductSoftwareImagePath), "kernel", "NDIS", {}, "",+
  228.             $(NetEventDLL)
  229.         Set OEM_ABANDON_SOFTWARE = TRUE
  230.         ifint $($ShellCode) != $(!SHELL_CODE_OK)
  231.             goto ShellCodeError
  232.         endif
  233.         set RegistryErrorIndex = $($R0)
  234.         Ifstr(i) $(RegistryErrorIndex) != "NO_ERROR"
  235.             EndWait
  236.             CloseRegKey $($R1)
  237.             CloseRegKey $($R2)
  238.             CloseRegKey $($R3)
  239.             CloseRegKey $($R4)
  240.             CloseRegKey $($R5)
  241.             goto fatalregistry
  242.         endif
  243.         set SoftProductKey      = $($R1)
  244.         Set SoftNetRuleKey      = $($R2)
  245.         Set SoftServiceKey      = $($R3)
  246.         Set SoftParameterKey    = $($R4)
  247.         Set SoftLinkageKey      = $($R5)
  248.         set NewValueList = {{SoftwareType,$(NoTitle),$(!REG_VT_SZ),$(SoftwareType)},+
  249.                            {MajorVersion,$(NoTitle),$(!REG_VT_DWORD),$(ProductMajorVersion)},+
  250.                            {MinorVersion,$(NoTitle),$(!REG_VT_DWORD),$(ProductMinorVersion)},+
  251.                            {Title,$(NoTitle),$(!REG_VT_SZ),$(ProductSoftwareTitle)},+
  252.                            {Description,$(NoTitle),$(!REG_VT_SZ),$(ProductSoftwareDescription)},+
  253.                            {ServiceName,$(NoTitle),$(!REG_VT_SZ),$(ProductSoftwareName)},+
  254.                            {InstallDate,$(NoTitle),$(!REG_VT_DWORD),*($(Now),1)}}
  255.         Shell  $(UtilityInf), AddValueList, $(SoftProductKey), $(NewValueList)
  256.         ifint $($ShellCode) != $(!SHELL_CODE_OK)
  257.             goto ShellCodeError
  258.         endif
  259.         set RegistryErrorIndex = $($R0)
  260.         Ifstr(i) $(RegistryErrorIndex) != "NO_ERROR"
  261.             EndWait
  262.             CloseRegKey $(SoftProductKey)
  263.             CloseRegKey $(SoftNetRuleKey)
  264.             CloseRegKey $(SoftServiceKey)
  265.             CloseRegKey $(SoftParameterKey)
  266.             CloseRegKey $(SoftLinkageKey)
  267.             goto fatalregistry
  268.         endif
  269.         set NewValueList = {{type,$(NoTitle),$(!REG_VT_SZ),$(NetRuleSoftwareType)},+
  270.                             {use,$(NoTitle),$(!REG_VT_SZ),$(NetRuleSoftwareUse)}, +
  271.                             {bindform,$(NoTitle),$(!REG_VT_SZ),$(NetRuleSoftwareBindForm)}, +
  272.                             {class,$(NoTitle),$(!REG_VT_MULTI_SZ),$(NetRuleSoftwareClass)}, +
  273.                             {bindable,$(NoTitle),$(!REG_VT_MULTI_SZ),$(NetRuleSoftwareBindable)}, +
  274.                             {InfOption,$(NoTitle),$(!REG_VT_SZ),$(Option)}}
  275.         Shell  $(UtilityInf), AddValueList, $(SoftNetRuleKey), $(NewValueList)
  276.         ifint $($ShellCode) != $(!SHELL_CODE_OK)
  277.             goto ShellCodeError
  278.         endif
  279.         set RegistryErrorIndex = $($R0)
  280.         CloseRegKey $(SoftProductKey)
  281.         CloseRegKey $(SoftNetRuleKey)
  282.         CloseRegKey $(SoftServiceKey)
  283.         CloseRegKey $(SoftParameterKey)
  284.         CloseRegKey $(SoftLinkageKey)
  285.         Ifstr(i) $(RegistryErrorIndex) != "NO_ERROR"
  286.             EndWait
  287.             goto fatalregistry
  288.         endif
  289.     endif
  290.     ForListDo $(AdapterList)
  291.         set BusNum = *($($),1)
  292.         set SlotNum = *($($),2)
  293.         Debug-Output $(BusNum)
  294.         Debug-Output $(SlotNum)
  295.         Shell $(UtilityInf), IsNetCardAlreadyInstalled, $(BusNum), +
  296.             $(SlotNum), $(ProductHardwareDescription), $(ProductHardwareName)
  297.         ifint $($ShellCode) != $(!SHELL_CODE_OK)
  298.             goto ShellCodeError
  299.         endif
  300.         ifstr $($R0) != "NO_ERROR"
  301.             set Error = $($R0)
  302.             goto fatal
  303.         endif
  304.         ifstr(i) $($R1) != "YES"
  305.                 Shell $(UtilityInf), AddHardwareComponent, $(ProductHardwareName),$(STF_CONTEXTINFNAME),$(ProductKeyName)
  306.                 ifint $($R4) != -1
  307.                     Set OEM_ABANDON_OPTIONS = >($(OEM_ABANDON_OPTIONS), $(!NTN_SoftwareBase)"\Microsoft\Windows NT\CurrentVersion\NetworkCards\"$($R4))
  308.                 endif
  309.                 ifint $($ShellCode) != $(!SHELL_CODE_OK)
  310.                     goto ShellCodeError
  311.                 endif
  312.                 set RegistryErrorIndex = $($R0)
  313.                 Ifstr(i) $(RegistryErrorIndex) != "NO_ERROR"
  314.                     EndWait
  315.                     CloseRegKey $($R1)
  316.                     CloseRegKey $($R2)
  317.                     CloseRegKey $($R3)
  318.                     goto fatalregistry
  319.                 endif
  320.                 Set HardNetCardKey      = $($R1)
  321.                 Set HardNetRuleKey      = $($R2)
  322.                 Set HardParameterKey    = $($R3)
  323.                 set AdapterNumber       = $($R4)
  324.                 set NewValueList = {{Manufacturer,$(NoTitle),$(!REG_VT_SZ),$(Manufacturer)},+
  325.                                    {Title,$(NoTitle),$(!REG_VT_SZ),"["$($R4)"] "$(ProductHardwareTitle)},+
  326.                                    {Description,$(NoTitle),$(!REG_VT_SZ),$(ProductHardwareDescription)},+
  327.                                    {ProductName,$(NoTitle),$(!REG_VT_SZ),$(ProductHardwareName)},+
  328.                                    {ServiceName,$(NoTitle),$(!REG_VT_SZ),$($R5)},+
  329.                                    {InstallDate,$(NoTitle),$(!REG_VT_DWORD),*($(Now),1)}}
  330.                 Shell  $(UtilityInf), AddValueList, $(HardNetCardKey), $(NewValueList)
  331.                 ifint $($ShellCode) != $(!SHELL_CODE_OK)
  332.                     goto ShellCodeError
  333.                 endif
  334.                 set NewValueList = {{BusNumber,$(NoTitle),$(!REG_VT_DWORD),$(BusNum)},+
  335.                                    {BusType,$(NoTitle),$(!REG_VT_DWORD),2},+
  336.                                    {MediaType,$(NoTitle),$(!REG_VT_DWORD),1},+
  337.                                    {EisaCompressedId,$(NoTitle),$(!REG_VT_DWORD),$(SMC9232_1BYTE)},+
  338.                                    {SlotNumber,$(NoTitle),$(!REG_VT_DWORD),$(SlotNum)}}
  339.                 Shell  $(UtilityInf), AddValueList, $(HardParameterKey), $(NewValueList)
  340.                 ifint $($ShellCode) != $(!SHELL_CODE_OK)
  341.                     goto ShellCodeError
  342.                 endif
  343.                  set TempProdName = """"$(ProductHardwareName)$(AdapterNumber)""""
  344.                  set TempBindForm = $(TempProdName)$(NetRuleHardwareBindForm)
  345.                  set NewValueList = {{type,$(NoTitle),$(!REG_VT_SZ),$(NetRuleHardwareType)},+
  346.                                      {bindform,$(NoTitle),$(!REG_VT_SZ),$(TempBindForm)}, +
  347.                                      {class,$(NoTitle),$(!REG_VT_MULTI_SZ),$(NetRuleHardwareClass)}, +
  348.                                      {InfOption,$(NoTitle),$(!REG_VT_SZ),$(Option)}}
  349.                 Shell  $(UtilityInf), AddValueList, $(HardNetRuleKey), $(NewValueList)
  350.                 CloseRegKey $(HardNetCardKey)
  351.                 CloseRegKey $(HardNetRuleKey)
  352.                 CloseRegKey $(HardParameterKey)
  353.                 ifint $($ShellCode) != $(!SHELL_CODE_OK)
  354.                     goto ShellCodeError
  355.                 endif
  356.         endif
  357.     EndForListDo
  358.     goto writeparameters
  359. writeparameters = +
  360.     EndWait
  361.     goto successful
  362. bindingadapter =+
  363.     set Error = "Binding: Sorry, not yet implemented."
  364.     goto fatal
  365. removeadapter = +
  366.     Ifstr(i) $(ProductKeyName) == $(!NTN_RegBase)
  367.         Shell $(UtilityInf), RemoveSoftwareComponent, $(Manufacturer), +
  368.             $(ProductSoftwareName)
  369.         ifint $($ShellCode) != $(!SHELL_CODE_OK)
  370.             Debug-Output "ShellCode error"
  371.             goto ShellCodeError
  372.         endif
  373.         set RegistryErrorIndex = $($R0)
  374.         Ifstr(i) $(RegistryErrorIndex) != NO_ERROR
  375.             goto fatalregistry
  376.         endif
  377.     else
  378.         Shell $(UtilityInf), RemoveHardwareComponent, $(Manufacturer), +
  379.             $(ProductSoftwareName), $(!NTN_RegBase)
  380.         ifint $($ShellCode) != $(!SHELL_CODE_OK)
  381.             Debug-Output "ShellCode error"
  382.             goto ShellCodeError
  383.         endif
  384.         set RegistryErrorIndex = $($R0)
  385.         Ifstr(i) $(RegistryErrorIndex) != NO_ERROR
  386.             goto fatalregistry
  387.         endif
  388.     endif
  389.     goto end
  390. UpgradeSoftware = +
  391.     ifstr(i) $(ProductKeyName) == $(!NTN_RegBase)
  392.         OpenRegKey $(!REG_H_LOCAL) "" $(ProductKeyName) $(MAXIMUM_ALLOWED) KeyProduct
  393.         Ifstr $(KeyProduct) != $(KeyNull)
  394.             GetRegValue $(KeyProduct),"MajorVersion", VersionInfo
  395.             set Version = *($(VersionInfo), 4)
  396.             Shell $(UtilityInf), GetInfFileNameFromRegistry, $(KeyProduct)
  397.             ifint $($ShellCode) != $(!SHELL_CODE_OK)
  398.                 Debug-Output "ShellCode error"
  399.                 goto ShellCodeError
  400.             endif
  401.             set !UG_Filename = $($R0)
  402.             ifstr(i) $(!UG_Filename) != ""
  403.                 install "Install-Update"
  404.                 ifstr(i) $(STF_INSTALL_OUTCOME) != STF_SUCCESS
  405.                     goto fatal
  406.                 endif
  407.             endif
  408.             SetRegValue $(KeyProduct) {MajorVersion,$(NoTitle),$(!REG_VT_SZ),$(ProductMajorVersion)}
  409.             SetRegValue $(KeyProduct) {MinorVersion,$(NoTitle),$(!REG_VT_SZ),$(ProductMinorVersion)}
  410.             ifint $(Version) != $(ProductVersion)
  411.             endif
  412.             CloseRegKey $(KeyProduct)
  413.         else
  414.             goto fatalregistry
  415.         endif
  416.     else
  417.         OpenRegKey $(!REG_H_LOCAL) "" $(!NTN_RegBase) +
  418.               $(MAXIMUM_ALLOWED) NetworkCardKey
  419.         Ifstr(i) $(NetworkCardKey) != $(KeyNull)
  420.             GetRegValue $(NetworkCardKey),"ServiceName", ServiceNameInfo
  421.             set ServiceName = *($(ServiceNameInfo), 4)
  422.             OpenRegKey $(NetworkCardKey) "" "NetRules" +
  423.                 $(MAXIMUM_ALLOWED) NetRuleKey
  424.             Ifstr(i) $(NetRuleKey) != $(KeyNull)
  425.             else
  426.                 goto fatalregistry
  427.             endif
  428.             CloseRegKey $(NetRules)
  429.             CloseRegKey $(NetworkCardKey)
  430.         else
  431.             goto fatalregistry
  432.         endif
  433.         OpenRegKey $(!REG_H_LOCAL) "" +
  434.               $(!NTN_ServiceBase)"\"$(ServiceName) +
  435.               $(MAXIMUM_ALLOWED) ServiceKey
  436.         Ifstr(i) $(ServiceKey) != $(KeyNull)
  437.             CloseRegKey $(ServiceKey)
  438.         else
  439.             goto fatalregistry
  440.         endif
  441.     endif
  442.     goto end
  443. successful = +
  444.     goto end
  445. abandon = +
  446.     ForListDo $(OEM_ABANDON_OPTIONS)
  447.         Shell $(UtilityInf), RemoveHardwareComponent, $(Manufacturer), +
  448.             $(ProductSoftwareName), $($)
  449.         ifint $($ShellCode) != $(!SHELL_CODE_OK)
  450.             Debug-Output "ShellCode error"
  451.             goto ShellCodeError
  452.         endif
  453.         set RegistryErrorIndex = $($R0)
  454.         Ifstr(i) $(RegistryErrorIndex) != NO_ERROR
  455.             goto fatalregistry
  456.         endif
  457.     EndForListDo
  458.     Ifstr(i) $(OEM_ABANDON_SOFTWARE) == TRUE
  459.         Shell $(UtilityInf), RemoveSoftwareComponent, $(Manufacturer), +
  460.             $(ProductSoftwareName), FALSE
  461.         ifint $($ShellCode) != $(!SHELL_CODE_OK)
  462.             Debug-Output "ShellCode error"
  463.             goto ShellCodeError
  464.         endif
  465.         set RegistryErrorIndex = $($R0)
  466.         Ifstr(i) $(RegistryErrorIndex) != NO_ERROR
  467.             goto fatalregistry
  468.         endif
  469.     endif
  470.     goto end
  471. warning = +
  472.     Shell $(subroutineinf) SetupMessage, $(!STF_LANGUAGE), "WARNING", $(Error)
  473.     ifint $($ShellCode) != $(!SHELL_CODE_OK)
  474.         goto ShellCodeError
  475.     endif
  476.     ifstr(i) $($R1) == "OK"
  477.         goto $(to)
  478.     else-ifstr(i) $($R1) == "CANCEL"
  479.         goto $(from)
  480.     else
  481.         goto "end"
  482.     endif
  483. nonfatalinfo = +
  484.     Set CommonStatus = STATUS_USERCANCEL
  485.     Set Severity = STATUS
  486.     goto nonfatalmsg
  487. nonfatal = +
  488.     Set Severity = NONFATAL
  489.     goto nonfatalmsg
  490. nonfatalmsg = +
  491.     ifstr(i) $(Error) == ""
  492.         Set Severity = NONFATAL
  493.         Shell $(UtilityInf) RegistryErrorString "SETUP_FAIL"
  494.         ifint $($ShellCode) != $(!SHELL_CODE_OK)
  495.             goto ShellCodeError
  496.         endif
  497.         set Error = $($R0)
  498.     endif
  499.     Shell $(subroutineinf) SetupMessage, $(!STF_LANGUAGE), $(Severity), $(Error)
  500.     ifint $($ShellCode) != $(!SHELL_CODE_OK)
  501.         goto ShellCodeError
  502.     endif
  503.     ifstr(i) $($R1) == "OK"
  504.         goto $(from)
  505.     else
  506.         goto "end"
  507.     endif
  508. fatalregistry = +
  509.     Shell $(UtilityInf) RegistryErrorString $(RegistryErrorIndex)
  510.     ifint $($ShellCode) != $(!SHELL_CODE_OK)
  511.         goto ShellCodeError
  512.     endif
  513.     set Error = $($R0)
  514.     goto fatal
  515. fatal = +
  516.     ifstr(i) $(Error) == ""
  517.         Shell $(UtilityInf) RegistryErrorString "SETUP_FAIL"
  518.         ifint $($ShellCode) != $(!SHELL_CODE_OK)
  519.             goto ShellCodeError
  520.         endif
  521.         set Error = $($R0)
  522.     endif
  523.     Shell $(subroutineinf) SetupMessage, $(!STF_LANGUAGE), "FATAL", $(Error)
  524.     ifint $($ShellCode) != $(!SHELL_CODE_OK)
  525.         goto ShellCodeError
  526.     endif
  527.     goto setfailed
  528. ShellCodeError = +
  529.     set DlgType      = "MessageBox"
  530.     set STF_MB_TITLE = $(ShellCodeErrorTitle)
  531.     set STF_MB_TEXT  = $(ShellCodeErrorText)
  532.     set STF_MB_TYPE  = 1
  533.     set STF_MB_ICON  = 3
  534.     set STF_MB_DEF   = 1
  535.     ui start "Error Message"
  536.     goto setfailed
  537. setfailed = +
  538.     set CommonStatus = STATUS_FAILED
  539.     ifstr(i) $(OEM_ABANDON_ON) == TRUE
  540.         set OEM_ABANDON_ON = FALSE
  541.         goto abandon
  542.     endif
  543.     goto end
  544. end = +
  545.     goto term
  546. term = +
  547.     Return $(CommonStatus)
  548. [Install-Option]
  549.     set STF_VITAL = ""
  550.     ifstr(i) $(AddCopy) == "YES"
  551.         AddSectionFilesToCopyList Files-$(Option) $(SrcDir) $(!STF_WINDOWSSYSPATH)\drivers
  552.     endif
  553.     ifstr(i) $(DoCopy) == "YES"
  554.        set !STF_NCPA_FLUSH_COPYLIST = TRUE
  555.        CopyFilesInCopyList
  556.     endif
  557.     ifstr(i) $(DoConfig) == "YES"
  558.     endif
  559.     Exit
  560. [Install-Update]
  561.    set STF_VITAL        = ""
  562.    set STF_OVERWRITE    = "VERIFYSOURCEOLDER"
  563.    AddSectionFilesToCopyList Files-$(Option) $(SrcDir) $(!STF_WINDOWSSYSPATH)\drivers
  564.    AddSectionFilesToCopyList Files-Inf $(SrcDir) $(!STF_WINDOWSSYSPATH)
  565.    set !STF_NCPA_FLUSH_COPYLIST = TRUE
  566.    CopyFilesInCopyList
  567.    exit
  568. [Source Media Descriptions]
  569. ;    1  = "Windows NT Setup Disk #1"  , TAGFILE = disk1
  570. ;    2  = "Windows NT Setup CD-ROM Disk"  , TAGFILE = disk2
  571. ;     99 = "SMC 9232 DISK "  , TAGFILE = SMC9232N.SYS
  572. ;      99 = "SMC 9232 DISK "
  573.      1 = "NT DRVLIB"
  574.  
  575. [Signature]
  576.     FileType = MICROSOFT_DRVLIB_FILE
  577. [GetSignature]
  578.     read-syms Signature
  579.     return $(FileType)
  580.  
  581. [ProductType]
  582. STF_PRODUCT  = Winnt
  583. STF_PLATFORM = I386
  584.  
  585. [Files-Inf]
  586. 1,     oemsetup.inf,    SIZE=1000,     RENAME=$(!UG_Filename)
  587.  
  588. [Files-SMC9232]
  589. 1,SMC9232N.SYS , SIZE=38400
  590.  
  591. [LanguagesSupported]
  592.     ENG
  593.  
  594. [OptionsTextENG]
  595.     SMC9232     = "SMC Fast Ethernet/Ethernet (SMC9232)"
  596.  
  597. [FileConstantsENG]
  598. ProCaption   = "Windows NT Setup"
  599. ProCancel    = "Cancel"
  600. ProCancelMsg = "Windows NT Networking is not correctly installed.  "+
  601.                "Are you sure you want to cancel copying files?"
  602. ProCancelCap = "Network Setup Message"
  603. ProText1     = "Copying:"
  604. ProText2     = "To:"
  605. FunctionTitle   = "SMC Adapter Card Setup"
  606. ProductSoftwareDescription      = "SMC 9232 driver"
  607. ProductHardwareDescription      = "SMC 9232 hardware"
  608. CANNOT_FIND_ANY_CARD            = "Network card is not present in the system"
  609. ProductSoftwareTitle    = "SMC 9232 driver"
  610. ProductHardwareTitle    = "SMC 9232 adapter"
  611. ShellCodeErrorTitle     = "Error: "$(FunctionTitle)
  612. ShellCodeErrorText      = "Shell Code Error."
  613. [DialogConstantsENG]
  614. Help        = "&Help"
  615. Exit        = "Cancel"
  616. OK          = "OK"
  617. HelpContext = ""
  618. Continue    = "Continue"
  619. Cancel      = "Cancel"
  620. [FileDependentDlgENG]
  621.  
  622.  
  623.  
  624.